Heroku - 3 Les différents langage de programmation
Bienvenue dans ce cours d'introduction à Heroku. Cette vidéo couvre les différents langages que Heroku regroupe et supporte, ainsi que les intégrations disponibles sur la plateforme. À sa sortie en 2007, Ruby était le seul langage compatible avec Heroku. Aujourd'hui, la plateforme prend également en charge Python, Node.js, Java, PHP, Go, Scala et Clojure. Il existe un réel besoin pour les services Heroku : sa croissance est continue et son infrastructure reçoit aujourd'hui plus de 25 milliards de requêtes par jour, gère plus de 8 millions d'applications et propose plus de 150 add-ons.
Les intégrations principales
Heroku supporte actuellement plus de 150 intégrations. Voici les plus utilisées :
- Heroku Redis : une base de données en mémoire (in-memory), idéale lorsque vous voulez stocker des données qui doivent être accédées souvent et rapidement.
- Heroku Postgres : une base de données SQL standard pour stocker vos données et exécuter vos requêtes.
- Heroku Kafka : utilisé pour sa tolérance aux pannes et la communication rapide entre systèmes. Il fournit un socle solide pour construire des applications capables de gérer des milliards d'événements et de transactions.
- Salesforce : leader du CRM, qui permet de stocker les données clients, gérer les paiements et les pistes commerciales. Salesforce est également le propriétaire d'Heroku, ce qui facilite la connexion entre les deux plateformes.
Imaginons un exemple d'application : un simple système de gestion d'utilisateurs où l'on peut créer, lire, mettre à jour et supprimer des utilisateurs (CRUD). La première étape est de construire un serveur dans l'un des langages supportés par Heroku. Ce serveur recevra les requêtes, y répondra et gérera toute la logique liée aux utilisateurs. Pour stocker ces utilisateurs, nous utilisons une base de données comme Heroku Postgres. Si les utilisateurs doivent aussi être visibles dans Salesforce, l'intégration native d'Heroku rend ce pont simple : les données présentes dans Postgres sont synchronisées avec Salesforce.
Pour améliorer les performances, on peut éviter d'envoyer une requête à Postgres à chaque lecture d'utilisateur en implémentant un système de cache avec Heroku Redis. Les données stockées dans le cache pourront être récupérées plus rapidement. Notez que Redis est conçu uniquement pour de la lecture rapide, donc il n'y a pas de risque de manipulation directe des données. Heroku propose de nombreux autres add-ons qui peuvent être intégrés à votre projet, et Heroku Elements est une sorte de marketplace regroupant tous ces add-ons : c'est l'un des outils les plus puissants de la plateforme. Voilà pour cette vidéo, à bientôt pour la prochaine !
En résumé
Cette leçon introduit les différents langages de programmation supportés par Heroku, notamment Ruby (le premier langage compatible en 2006), Python, Node.js, Java, PHP, Go et Clojure. Au-delà des langages, elle explore les principales intégrations d'Heroku telles que Redis, PostgreSQL, Kafka et Salesforce, en illustrant comment construire une architecture complète de gestion d'utilisateurs avec caching et synchronisation de données. La leçon souligne la maturité d'Heroku : plus de 25 milliards de requêtes par jour, 8 millions d'applications et 150+ intégrations disponibles.
Points clés
- Ruby était le premier et seul langage supporté par Heroku à sa sortie en 2006 ; aujourd'hui, Heroku supporte plus de 7 langages incluant Python, Node.js, Java, PHP, Go et Clojure
- Heroku infrastructure actuelle : plus de 25 milliards de requêtes par jour, 8 millions d'applications gérées, 150+ add-ons et intégrations disponibles
- Les trois intégrations majeures : PostgreSQL pour la base de données SQL, Redis pour le cache in-memory (accès rapide sans risque de manipulation), et Kafka pour la tolérance aux pannes et communication rapide entre systèmes
- Salesforce est intégré nativement dans Heroku (Salesforce en est propriétaire) ; les données PostgreSQL peuvent être synchronisées vers Salesforce pour une vue client centralisée
- Architecture type d'une application Heroku : serveur dans l'un des langages supportés + base de données (PostgreSQL) + système de cache (Redis) + intégrations tierces (Salesforce)
Questions fréquentes
Quel a été le premier langage de programmation supporté par Heroku ?
Ruby était le seul langage compatible avec Heroku lors de sa sortie en 2006. Aujourd'hui, Heroku supporte également Python, Node.js, Java, PHP, Go et Clojure.
Pourquoi utiliser Redis dans une application Heroku ?
Redis est une base de données in-memory (en mémoire) qui permet de stocker et récupérer les données très rapidement. Elle est idéale pour implémenter un système de cache afin d'améliorer les performances en évitant des requêtes fréquentes à la base de données principale PostgreSQL. Redis est conçu uniquement pour la lecture, sans risque de manipulation des données.
Comment Heroku facilite-t-il l'intégration avec Salesforce ?
Salesforce est le propriétaire d'Heroku et a mis en place une intégration native entre les deux plateformes. Les données stockées dans PostgreSQL peuvent être synchronisées vers Salesforce, permettant à tous les membres de l'organisation de voir et gérer les données clients centralisées dans le CRM Salesforce.